package com.yixun.qfbao.apidto;

import com.yixun.qfbao.annotation.TYWValid;
import com.yixun.qfbao.apidto.base.CommonReqDTO;

import java.io.Serializable;
import java.util.List;

public class GetCPPageReqDto extends CommonReqDTO implements Serializable {
	
	private static final long serialVersionUID = 1L;
	/**
	 * 楼盘ID
	 */
	private String premisesId;
	
	/**
	 * 楼盘ID的集合
	 */
	private List<Long> premisesIds;
	/**
	 * 页码
	 */
	@TYWValid(min = 1, max = 10)
	private Integer pageNo;
	
	/**
	 * 页数
	 */
	@TYWValid(min = 1, max = 10)
	private Integer pageSize;
	
	/**
	 * 模糊搜索
	 * 客户手机、姓名、意向楼盘
	 */
	@TYWValid(min = 0)
	private String name;
	/**
	 * 客户状态(报备状态)
	 */
	@TYWValid(min = 0)
	private String customerStatus;
	/**
	 * 交易状态
	 */
	@TYWValid(min = 0)
	private String confirmStatus;
	/**
	 * 中介公司
	 */
	@TYWValid(min = 0)
	private String companyId;
	/**
	 * 经纪人
	 */
	@TYWValid(min = 0)
	private String agentId;
	/**
	 * 创建开始时间
	 */
	@TYWValid(min = 0)
	private String createTimeBefore;
	/**
	 * 创建结束时间
	 */
	@TYWValid(min = 0)
	private String createTimeAfter;
	/**
	 * 公司ID
	 */
	private Long merchantId;
	/**
	 * 账号类型
	 */
	private String accountType;
	/**
	 * 楼盘名称
	 */
	private String premisesName;
	/**
	 * 搜索内容
	 */
	private String searchContent;
	
	private String disableType;

	private String storeOrGroup;
    /**
     * 搜索时间类型
     */
	private String timeType;
    /**
     * 报备类型： 1-案场代报备；2-经纪人报备
     */
	private String reportUserType;

	/**
	 * 报备方式 0都不能看 1全号 2隐号 3全部都可以看
	 */
	private String roleReportWay;

	/**
	 * 有权限看的人
	 */
	private List<Long> canViewPartnerIds;

	/**
	 * 有权限看的楼盘报备（选择本部）
	 */
	private List<Long> canViewPremisesIds;

	/**
	 * 部门权限类型
	 */
	private String deptPermission;

    /**
     *  门店组别ID
     */
    private Long storeOrGroupId;
    
    /**
     * 组别ID
     */
    private Long groupId;

    private Long agencyDeptId;

    /**
     *  推荐人ID
     */
    private Long recommenderId;

    /**
     *  到访状态
     */
    private String visitState;

	/**
	 *	是否展示全号
	 */
	private Boolean showFullNumber;

	private Boolean hideAgentPhone;

	/**
	 * 按揭状态
	 * @return
	 */
	private String mortgageStatus;

	/**
	 * payFinish
	 * @return
	 */
	private String payFinish;

	public Boolean getShowFullNumber() {
		return showFullNumber;
	}

	public void setShowFullNumber(Boolean showFullNumber) {
		this.showFullNumber = showFullNumber;
	}

	public Boolean getHideAgentPhone() {
		return hideAgentPhone;
	}

	public void setHideAgentPhone(Boolean hideAgentPhone) {
		this.hideAgentPhone = hideAgentPhone;
	}

	public Long getStoreOrGroupId() {
        return storeOrGroupId;
    }

    public void setStoreOrGroupId(Long storeOrGroupId) {
        this.storeOrGroupId = storeOrGroupId;
    }

	public Long getAgencyDeptId() {
		return agencyDeptId;
	}

	public void setAgencyDeptId(Long agencyDeptId) {
		this.agencyDeptId = agencyDeptId;
	}

	public Long getRecommenderId() {
        return recommenderId;
    }

    public void setRecommenderId(Long recommenderId) {
        this.recommenderId = recommenderId;
    }

    public String getVisitState() {
        return visitState;
    }

    public void setVisitState(String visitState) {
        this.visitState = visitState;
    }

    public String getRoleReportWay() {
		return roleReportWay;
	}

	public void setRoleReportWay(String roleReportWay) {
		this.roleReportWay = roleReportWay;
	}

	public List<Long> getCanViewPartnerIds() {
		return canViewPartnerIds;
	}

	public void setCanViewPartnerIds(List<Long> canViewPartnerIds) {
		this.canViewPartnerIds = canViewPartnerIds;
	}

	public String getDisableType() {
		return disableType;
	}
	public void setDisableType(String disableType) {
		this.disableType = disableType;
	}
	public String getSearchContent() {
		return searchContent;
	}
	public void setSearchContent(String searchContent) {
		this.searchContent = searchContent;
	}
	public String getPremisesName() {
		return premisesName;
	}
	public void setPremisesName(String premisesName) {
		this.premisesName = premisesName;
	}
	public Integer getPageNo() {
		return pageNo;
	}
	public void setPageNo(Integer pageNo) {
		this.pageNo = pageNo;
	}
	public Integer getPageSize() {
		return pageSize;
	}
	public void setPageSize(Integer pageSize) {
		this.pageSize = pageSize;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getCustomerStatus() {
		return customerStatus;
	}
	public void setCustomerStatus(String customerStatus) {
		this.customerStatus = customerStatus;
	}
	public String getConfirmStatus() {
		return confirmStatus;
	}
	public void setConfirmStatus(String confirmStatus) {
		this.confirmStatus = confirmStatus;
	}
	public String getCompanyId() {
		return companyId;
	}
	public void setCompanyId(String companyId) {
		this.companyId = companyId;
	}
	public String getAgentId() {
		return agentId;
	}
	public void setAgentId(String agentId) {
		this.agentId = agentId;
	}
	public String getCreateTimeBefore() {
		return createTimeBefore;
	}
	public void setCreateTimeBefore(String createTimeBefore) {
		this.createTimeBefore = createTimeBefore;
	}
	public String getCreateTimeAfter() {
		return createTimeAfter;
	}
	public void setCreateTimeAfter(String createTimeAfter) {
		this.createTimeAfter = createTimeAfter;
	}

	public Long getMerchantId() {
		return merchantId;
	}

	public void setMerchantId(Long merchantId) {
		this.merchantId = merchantId;
	}

	public String getAccountType() {
		return accountType;
	}

	public void setAccountType(String accountType) {
		this.accountType = accountType;
	}

	public String getPremisesId() {
		return premisesId;
	}

	public void setPremisesId(String premisesId) {
		this.premisesId = premisesId;
	}

	public String getStoreOrGroup() {
		return storeOrGroup;
	}

	public void setStoreOrGroup(String storeOrGroup) {
		this.storeOrGroup = storeOrGroup;
	}

    public String getTimeType() {
        return timeType;
    }

    public void setTimeType(String timeType) {
        this.timeType = timeType;
    }

    public String getReportUserType() {
        return reportUserType;
    }

    public void setReportUserType(String reportUserType) {
        this.reportUserType = reportUserType;
    }

	public List<Long> getCanViewPremisesIds() {
		return canViewPremisesIds;
	}

	public void setCanViewPremisesIds(List<Long> canViewPremisesIds) {
		this.canViewPremisesIds = canViewPremisesIds;
	}

	public String getDeptPermission() {
		return deptPermission;
	}

	public void setDeptPermission(String deptPermission) {
		this.deptPermission = deptPermission;
	}

	public String getMortgageStatus() {
		return mortgageStatus;
	}

	public void setMortgageStatus(String mortgageStatus) {
		this.mortgageStatus = mortgageStatus;
	}

	public String getPayFinish() {
		return payFinish;
	}

	public void setPayFinish(String payFinish) {
		this.payFinish = payFinish;
	}

	public Long getGroupId() {
		return groupId;
	}

	public void setGroupId(Long groupId) {
		this.groupId = groupId;
	}

	public List<Long> getPremisesIds() {
		return premisesIds;
	}

	public void setPremisesIds(List<Long> premisesIds) {
		this.premisesIds = premisesIds;
	}
	
}
